The present invention pertains generally to the field of database querying. Many business enterprises generate large amounts of electronic data that are archived for a variety of purposes. Examples include archiving transaction data for auditing, customer service or data mining uses. A business enterprise may also be required to archive electronic data for regulatory purposes.
The enterprise data typically is created and stored within one or more data warehouses spread out over multiple tables in a database or multiple databases. Searching these multiple sources typically requires that the data storage is built and indexed in full, at which point queries can be run against the data, often in a piecemeal format querying each column of the database. Thus, queries of all tables in a database or across database often requires knowledge of the underlying database structure, maintenance to keep tables in sync, pre-processing, and index building. In addition, queries using a typical model often require heavy processing and are redundant over data common between the tables. In the context of keyword searching, searches alternatively can be performed on documents, but this process requires data extraction and synchronization to ensure data integrity.